From: <Saved by Windows Internet Explorer 8>
Subject: Shift Register Counters
Date: Sat, 1 Jan 2011 15:25:53 +0200
MIME-Version: 1.0
Content-Type: multipart/related;
	type="text/html";
	boundary="----=_NextPart_000_01F2_01CBA9C8.2D7ED030"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5994

This is a multi-part message in MIME format.

------=_NextPart_000_01F2_01CBA9C8.2D7ED030
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.eelab.usyd.edu.au/digital_tutorial/part2/register07.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>Shift Register Counters</TITLE>
<META content=3D"text/html; charset=3Diso-8859-1" =
http-equiv=3DContent-Type><!-- Created with AOLpress/2.0 -->
<META name=3DGENERATOR content=3D"MSHTML 8.00.6001.18975"></HEAD>
<BODY link=3D#808000 bgColor=3D#ffffff vLink=3D#ff80c0>
<P align=3Dcenter><IMG border=3D0 alt=3DRegisters=20
src=3D"http://www.eelab.usyd.edu.au/digital_tutorial/part2/pics/register0=
1s.gif"=20
width=3D200 height=3D60>=20
<H1 align=3Dcenter><FONT color=3Dteal><I>Shift Register =
Counters</I></FONT> </H1>
<BLOCKQUOTE><B>Two of the most common types of shift register counters =
are=20
  introduced here: the <FONT color=3D#ff0080>Ring counter</FONT> and the =
<FONT=20
  color=3D#ff0080>Johnson counter</FONT>. &nbsp;They are basically shift =
registers=20
  with the serial outputs connected back to the serial inputs in order =
to=20
  produce particular sequences. &nbsp;These registers are classified as =
counters=20
  because they exhibit a specified sequence of states.</B> <BR><BR>
  <H2><FONT color=3Dred>Ring Counters</FONT> </H2>
  <P><B>A ring counter is basically a circulating shift register in =
which the=20
  output of the most significant stage is fed back to the input of the =
least=20
  significant stage. &nbsp;The following is a <FONT =
color=3D#ff0080>4-bit ring=20
  counter</FONT> constructed from D flip-flops. &nbsp;The output of each =
stage=20
  is shifted into the next stage on the positive edge of a clock pulse. =
&nbsp;If=20
  the CLEAR signal is high, all the flip-flops except the first one FF0 =
are=20
  reset to 0. &nbsp;FF0 is preset to 1 instead.</B>=20
  <P align=3Dcenter><IMG border=3D0 alt=3D"4-bit ring counter"=20
  =
src=3D"http://www.eelab.usyd.edu.au/digital_tutorial/part2/pics/regist01f=
.jpg"=20
  width=3D445 height=3D153>=20
  <P align=3Dcenter>
  <TABLE cellPadding=3D2>
    <TBODY>
    <TR>
      <TD>
        <CENTER><IMG border=3D0 alt=3D"4-bit ring sequence"=20
        =
src=3D"http://www.eelab.usyd.edu.au/digital_tutorial/part2/pics/ring4t.jp=
g"=20
        width=3D250 height=3D100><BR><IMG border=3D0 alt=3D"Ring Counter =
Animation"=20
        =
src=3D"http://www.eelab.usyd.edu.au/digital_tutorial/part2/pics/ring4.gif=
"=20
        width=3D250 height=3D40> </CENTER></TD>
      <TD><B>Since the count sequence has 4 distinct states, the counter =
can=20
        be considered as a <FONT color=3D#0080ff>mod-4 counter</FONT>. =
&nbsp;Only=20
        4 of the maximum 16 states are used, making ring counters very=20
        inefficient in terms of state usage. &nbsp;But the major =
advantage of a=20
        ring counter over a binary counter is that it is self-decoding. =
&nbsp;No=20
        extra decoding circuit is needed to determine what state the =
counter is=20
        in.</B></TD></TR></TBODY></TABLE>
  <P><BR>
  <H2><FONT color=3Dred>Johnson Counters</FONT> </H2>
  <P align=3Dcenter><IMG border=3D0 alt=3D"4-bit Johnson Counter"=20
  =
src=3D"http://www.eelab.usyd.edu.au/digital_tutorial/part2/pics/john4.jpg=
"=20
  width=3D435 height=3D148>=20
  <P align=3Dcenter>
  <TABLE cellPadding=3D2>
    <TBODY>
    <TR>
      <TD>
        <CENTER><IMG border=3D0 alt=3D"4-bit Johnson Sequence "=20
        =
src=3D"http://www.eelab.usyd.edu.au/digital_tutorial/part2/pics/john4t.jp=
g"=20
        width=3D250 height=3D158> <BR><IMG border=3D0 alt=3D"Johnson =
Animation"=20
        =
src=3D"http://www.eelab.usyd.edu.au/digital_tutorial/part2/pics/john4.gif=
"=20
        width=3D250 height=3D40> </CENTER></TD>
      <TD><B>Johnson counters are a variation of standard ring counters, =
with=20
        the inverted output of the last stage fed back to the input of =
the first=20
        stage. &nbsp;They are also known as <FONT =
color=3D#ff0080>twisted ring=20
        counters</FONT>. &nbsp;An <I>n</I>-stage Johnson counter yields =
a count=20
        sequence of length <I>2n</I>, so it may be considered to be a =
<FONT=20
        color=3D#0080ff>mod-<I>2n</I> counter</FONT>. &nbsp;The circuit =
above=20
        shows a <FONT color=3D#ff0080>4-bit Johnson counter</FONT>. =
&nbsp;The=20
        state sequence for the counter is given in the table as well as =
the=20
        animation on the left.</B></TD></TR></TBODY></TABLE>
  <P><B>Again, the apparent disadvantage of this counter is that the =
maximum=20
  available states are not fully utilized. &nbsp;Only eight of the =
sixteen=20
  states are being used.</B>=20
  <P><B><FONT color=3Dred><BLINK>Beware</BLINK></FONT> that for both the =
Ring and=20
  the Johnson counter must initially be forced into a valid state in the =
count=20
  sequence because they operate on a subset of the available number of =
states.=20
  &nbsp;Otherwise, the ideal sequence will not be followed.</B>=20
  <P><BR><BR></P></BLOCKQUOTE>
<P align=3Dcenter><IMG border=3D0=20
src=3D"http://www.eelab.usyd.edu.au/digital_tutorial/part2/pics/bhf_g.gif=
" isMap=20
width=3D300 height=3D40 useMap=3D#bhfr><MAP name=3Dbhfr> <AREA=20
  =
href=3D"http://www.eelab.usyd.edu.au/digital_tutorial/part2/register08.ht=
ml"=20
  shape=3DRECT coords=3D200,0,300,40><AREA=20
  =
href=3D"http://www.eelab.usyd.edu.au/digital_tutorial/part2/hpage.html"=20
  shape=3DRECT coords=3D102,0,200,40><AREA=20
  =
href=3D"http://www.eelab.usyd.edu.au/digital_tutorial/part2/register06.ht=
ml"=20
  shape=3DRECT coords=3D0,0,102,40></MAP><BR><BR></P></BODY></HTML>

------=_NextPart_000_01F2_01CBA9C8.2D7ED030
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.eelab.usyd.edu.au/digital_tutorial/part2/pics/register01s.gif

[encoded data, 4332 characters]
A4RCeITvR4NIuIR+syU7yIRQ+DYBAQA7

------=_NextPart_000_01F2_01CBA9C8.2D7ED030
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://www.eelab.usyd.edu.au/digital_tutorial/part2/pics/regist01f.jpg

[encoded data, 14516 characters]
FKUoFKUoP//Z

------=_NextPart_000_01F2_01CBA9C8.2D7ED030
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://www.eelab.usyd.edu.au/digital_tutorial/part2/pics/ring4t.jpg

[encoded data, 10860 characters]

------=_NextPart_000_01F2_01CBA9C8.2D7ED030
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.eelab.usyd.edu.au/digital_tutorial/part2/pics/ring4.gif

[encoded data, 13072 characters]
AAA7

------=_NextPart_000_01F2_01CBA9C8.2D7ED030
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://www.eelab.usyd.edu.au/digital_tutorial/part2/pics/john4.jpg

[encoded data, 13908 characters]
IiAiIgIiICIiAiIgIiIP/9k=

------=_NextPart_000_01F2_01CBA9C8.2D7ED030
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://www.eelab.usyd.edu.au/digital_tutorial/part2/pics/john4t.jpg

[encoded data, 16796 characters]
aWpYaD65D7yktLK0p4jq1gAkAnAUB7hpHVq0wJCS00SEl//Z

------=_NextPart_000_01F2_01CBA9C8.2D7ED030
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.eelab.usyd.edu.au/digital_tutorial/part2/pics/john4.gif

[encoded data, 16568 characters]
AAIAIQAAAAAAAAAAAApDbGlwYm9hcmQAADs=

------=_NextPart_000_01F2_01CBA9C8.2D7ED030
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.eelab.usyd.edu.au/digital_tutorial/part2/pics/bhf_g.gif

[encoded data, 38604 characters]

------=_NextPart_000_01F2_01CBA9C8.2D7ED030--
